With the rapid development of computer network technologies and infrastructure construction, multimedia network services provided by multimedia service providers, for example, high-resolution video-on-demand services, are growing gradually. These services generally use bandwidth and storage resources in a caching system to provide a high-quality and uninterruptible video stream to an end user. However, the ever-increasing number of users as well as higher and higher requirements on service quality also imposes much pressure on the service providers. The overall bandwidth and storage resources of a video-on-demand system are limited. As a result, the service providers have to increase investment on infrastructure construction, so as to satisfy user's increasing requirements. In such a context, how to efficiently use the bandwidth resources and storage resources of the caching system to satisfy user's requirements in a better way becomes a problem requiring serious consideration. However, when the problem is considered for a caching system in a distributed environment, heterogeneity of system resources and user access behaviors makes a more complex policy for the caching system, where it is difficult to implement high-efficiency coordination among nodes. As a result, how to use an existing infrastructure architecture to implement coordination among cache nodes as much as possible in a heterogeneous network environment to satisfy user's requirements on services is a major content of study in the distributed field.
In an existing layered caching system, a user request is transferred in an upstream path in a multi-layer video network. The request is satisfied once a related content is stored on a server. Meanwhile, the system generally determines a caching policy by using a minimum packet path length as an optimization target. Firstly, an overall topology structure of the system, storage capacity information of nodes, and user access modes are obtained; then, a caching policy problem is formulated into an optimization problem. An optimization target is used to minimize an access path length of a request. However, this conventional policy has several serious defects. Firstly, static request routing can implement caching coordination only between different layers, but can hardly implement caching coordination between nodes at the same layer, which affects resource sharing among distributed cache servers. Secondly, a video system consumes much network bandwidth at present, and the optimization target using only the request packet path length does not comply with actual requirements of the system. Thirdly, in order to simplify the problem, a conventional optimized caching policy generally assumes that there is a homogeneous system resource configuration, which does not comply with the actual condition of the system.
In the prior art, a distributed caching method for an Internet Protocol Television (IPTV) system is further proposed. This method raises a problem of using a minimized content transmission cost as a target. In subsequent system verification, the content transmission cost is measured by using a basic criterion of a transmission distance from a source node returning a content to a user. This method assumes that a system has limited resources and is homogeneous on the whole, that is, nodes at the same layer have the same storage capacity, and user requests on the nodes have the same structure. On this basis, the method proposes a distributed caching policy as follows:                1. a content attracting the highest attention is stored on all bottom-layer nodes;        2. a content attracting higher attention is stored only on partial bottom-layer nodes; and        3. other contents attracting relatively low attention is stored only on a certain bottom-layer node.        
This method further simplifies the policy into a greedy method based on content utility. A content attracting relatively high attention has a relatively high degree of utility, and a content attracting relatively low attention has a relatively low degree of utility in cases where it is stored by another node.
The method in the prior art has the defect that the method assumes that the overall system resources are homogeneous. However, in an actual large-scale video system, generally servers are heterogeneous in terms of capacity, and content requests of users in different areas usually have different modes. This method fails to reflect the bandwidth consumption feature in the existing video system. In caching policy designing for a high-definition video system, instead of using only the path length as a criterion for measuring system performance, the problem of limited bandwidth resources also needs to be considered.